import { createStore } from 'vuex'
import { setItem, getItem, removeItem } from 'utils/storage'

const TOKEN_KEY = 'TOUTIAO_USER'

export default createStore({
  state: {
    // 存储当前登录用户信息，（token 等数据）
    user: getItem(TOKEN_KEY),
  },
  // mutations 用于修改 、更新 state 中的数据
  mutations: {
    setUser(state, payload) {
      state.user = payload.data

      // 为了防止刷新后丢失数据，需要把数据备份到本地存储（持久化）
      // localStorage 中只能存储字符串
      setItem(TOKEN_KEY, state.user);
    }
  },
  // actions 用于获取 state 中的数据
  actions: {
  },
  modules: {
  }
})
